1. Technical Field
The present invention relates in general to user interfaces for computers. More specifically, the present invention relates to cut and paste tools in computer user interfaces.
2. Background Art
The development of the EDVAC computer system of 1948 is often cited as the beginning of the computer era. Since that time, computer systems have evolved into extremely sophisticated devices that may be found in many different settings. Computer systems typically include a combination of hardware (e.g., semiconductors, circuit boards, etc.) and software (e.g., computer programs). As advances in semiconductor processing and computer architecture push the performance of the computer hardware higher, more sophisticated computer software has evolved to take advantage of the higher performance of the hardware, resulting in computer systems today that are much more powerful that just a few years ago.
Early computer systems required an extensive knowledge of commands for a user to perform any type of function. These computers employed what is known as a command line in which a specific command would have to be entered to perform just about any type of operation. This limited the use of computers to those who had the time to learn a large number of relatively cryptic commands.
Later computer systems used a more advanced user interface to make it easier for a computer user to perform functions without knowledge of specific commands. The most common modern interface is the graphical user interface, or GUI. A GUI uses some type of symbol, menu or other mechanism which is activated by a computer user with a pointing device (e.g., a mouse, a trackball) to perform many commonly performed tasks. These graphical mechanisms are usually designed to be somewhat consistent and self-explanatory to make it as easy as possible for a user to perform common functions.
One common ability provided by user interfaces is the ability to xe2x80x9ccut and pastexe2x80x9d data from one document to another. This is typically done by a user selecting a portion of the source document using a pointing device or keyboard, and then activating a xe2x80x9ccutxe2x80x9d command. The cut command copies the highlighted portion of the document to a portion of memory, commonly referred to as a xe2x80x9cclipboardxe2x80x9d. The user then moves to the destination document, moves the cursor to the desired location, and then activates the xe2x80x9cpastexe2x80x9d command. The user interface then takes the data from the clipboard and inserts it into the desired location on the destination document.
Unfortunately, there are limitations to current cut and paste technologies. First, when a user wants to cut and paste an image that has lettering or words in it, such as a logo, and wants only the image without the logo, the only means to do that today is by opening an image editor on the image and manually editing the image (sometimes pixel by pixel) in a laborious exercise.
Second, when a user attempts to cut an item that appears to be text, but is in fact an image, the cut and paste will result in the image being inserted into the destination document, in image format such as .jpg or .gif, instead of as text. For example, when a web browser user attempts to cut from a web page in which the xe2x80x9ctextxe2x80x9d is really an image file illustrating text, the paste operation will not result in the copying of the desired information in text format that can be manipulated using a word processor or otherwise inserted into other text strings. Thus, the user is required to manually type in text information displayed in the web page image or otherwise manually reproduce the information.
Therefore, without improved mechanisms for cutting and pasting images from one document to another, users will continue to be forced to rely on manual, time consuming methods for copying images and manually transforming the images to meet their needs.
The preferred embodiment of the present invention provides a method and apparatus for copying images from a source document to a destination document in a computer user interface. The preferred embodiment provides a user interface that gives the user the option to cut or copy information from an image and extract the textual information from the copied image in one cut and paste. The extracted text can then be pasted into the destination document as text. Thus, textual information from an image can easily and automatically be copied into text portions of the destination document. Alternatively, the image with the text removed can be copied into the destination in one cut and paste operation.
In the preferred embodiment, the textual information is extracted from copied images using optical character recognition (OCR) techniques. Thus, when activated by a user, the user interface copies the image, OCR""s the image to locate the textual information, and then pastes the located textual information when directed by the user.
In an additional embodiment, the user interface automatically performs the textual extraction and paste when a user attempts to paste into a document or field designated as a text only field. Thus, the user interface facilitates the automatic copying and pasting of textual information from image information, without requiring input and direction from the user.
In an additional embodiment, the textual symbols are extracted from the image, so that only the non-textual portions of the image remain. The portions of the image in which the extracted text is removed can then be dithered over using the surrounding color pixels to effectively erase out the text. The image with the text removed is then pasted into the destination document.